package com.solution.model;

import javax.persistence.Column;
import javax.persistence.Embeddable;

/**
 * ExamCategoryLevelMappingId
 */
@Embeddable
public class ExamCategoryLevelMappingId  implements java.io.Serializable
 {

	
	private static final long serialVersionUID = 1L;
	
    private Long examTypeId;
    private Long categoryTypeId;
    private Long levelTypeId;


    @Column(name="Exam_TypeID", nullable=false, precision=10, scale=0)
    public Long getExamTypeId() {
        return this.examTypeId;
    }
    
    public void setExamTypeId(Long examTypeId) {
        this.examTypeId = examTypeId;
    }

    @Column(name="Category_TypeID", nullable=false, precision=10, scale=0)
    public Long getCategoryTypeId() {
        return this.categoryTypeId;
    }
    
    public void setCategoryTypeId(Long categoryTypeId) {
        this.categoryTypeId = categoryTypeId;
    }

    @Column(name="Level_TypeID", nullable=false, precision=10, scale=0)
    public Long getLevelTypeId() {
        return this.levelTypeId;
    }
    
    public void setLevelTypeId(Long levelTypeId) {
        this.levelTypeId = levelTypeId;
    }


   public boolean equals(Object other) {
         if ( (this == other ) ) return true;
		 if ( (other == null ) ) return false;
		 if ( !(other instanceof ExamCategoryLevelMappingId) ) return false;
		 ExamCategoryLevelMappingId castOther = ( ExamCategoryLevelMappingId ) other; 
         
		 return ( (this.getExamTypeId()==castOther.getExamTypeId()) || ( this.getExamTypeId()!=null && castOther.getExamTypeId()!=null && this.getExamTypeId().equals(castOther.getExamTypeId()) ) )
 && ( (this.getCategoryTypeId()==castOther.getCategoryTypeId()) || ( this.getCategoryTypeId()!=null && castOther.getCategoryTypeId()!=null && this.getCategoryTypeId().equals(castOther.getCategoryTypeId()) ) )
 && ( (this.getLevelTypeId()==castOther.getLevelTypeId()) || ( this.getLevelTypeId()!=null && castOther.getLevelTypeId()!=null && this.getLevelTypeId().equals(castOther.getLevelTypeId()) ) );
   }
   
   public int hashCode() {
         int result = 17;
         
         result = 37 * result + ( getExamTypeId() == null ? 0 : this.getExamTypeId().hashCode() );
         result = 37 * result + ( getCategoryTypeId() == null ? 0 : this.getCategoryTypeId().hashCode() );
         result = 37 * result + ( getLevelTypeId() == null ? 0 : this.getLevelTypeId().hashCode() );
         return result;
   }   


}


